Bluetooth (BT) is an example ad-hoc networking technology. BT technology is a wireless communication standard generally used when transferring information between two or more wireless devices that are near to one another when speed is not a consideration, including telephones, printers, modems and headsets. BT is well suited for low-bandwidth applications including transferring sound data with telephones (e.g., with a BT headset) or byte data with hand-held computers (transferring files), or keyboards and mice. The BT Special Interest Group (SIG) specification may be used for these BT communications.
One use for BT is for scatternets which include a plurality of independent and unsynchronized piconets, where piconets are a basic unit of BT networking. In a piconet, there is a master device and one or more slave devices, where the devices each generally include a host processor (or ‘application processor’) and a controller (or ‘firmware (FW) processor’). The master device determines the channel and phase for the slave device(s). A scatternet is a type of adhoc computer network comprising two or more piconets. In a scatternet, a slave device can communicate with more than one piconet. In connection with operation of a scatternet, the BT master devices may relay the identity of mobile slave devices that are within their individual piconets to its host processor for purposes of tracking the location of a mobile slave device, or the location of a person carrying a mobile slave device.
As shown in FIG. 1, in order to forward data using BT over a BT network such as a scatternet where the BT devices shown as BT devices 101, 102 and 103 are each not in the same piconet and hence each have a different master, each BT device in the communication chain needs to perform several steps. The BT devices are shown including a host processor 125a and a BT controller 125b that are coupled together by a Host Controller Interface (HCI). As known in the art HCI provides a uniform command method for accessing the BT hardware capabilities by providing a command interface to the baseband controller and link manager of the BT controller 125b, and access to hardware status and control registers.
Upon reception of the data, the BT devices other than the first BT device 101 shown as BT devices 102 and 103 in FIG. 1 each send this data to its host processor 125a. The host processor 125a parses the data, acts upon the received data (such as adds a timestamp, manipulates (changes the data), plays the data, or performs other data functionality), and then resends the data back to the BT controller 125b which only then transmits the data to the next BT device in the chain. In forwarding the data BT devices 102 and 103 thus each execute three (3) steps as shown in FIG. 1 including two (2) steps just looping through the host processor 125a, while the first BT device 101 in the chain executes 2 total steps.